The following code load the necessary packages.
library(tidyverse)
library(ggthemes)
The following code read the data from my computer. But I saved all the data on a .RData file. This file is uploaded to github so everyone can download it and check the code by yourself.
read.data <- function(year, file, variables){
censo.escolar.year <- read_delim(file,
delim = ';',
locale = locale(encoding = 'WINDOWS-1252'),
escape_double = TRUE,
trim_ws = TRUE,
col_select = variables)}
variables <- c('NU_ANO_CENSO', 'NO_REGIAO', 'CO_REGIAO',
'CO_UF', 'NO_MUNICIPIO', 'CO_ENTIDADE',
'TP_DEPENDENCIA', 'TP_LOCALIZACAO', 'TP_CATEGORIA_ESCOLA_PRIVADA',
'TP_SITUACAO_FUNCIONAMENTO','QT_COMP_ALUNO',
'IN_DESKTOP_ALUNO',
'QT_DESKTOP_ALUNO', 'IN_COMP_PORTATIL_ALUNO',
'QT_COMP_PORTATIL_ALUNO', 'IN_TABLET_ALUNO',
'QT_COMPUTADOR', 'QT_COMP_ADMINISTRATIVO',
'QT_TABLET_ALUNO', 'IN_INTERNET',
'IN_INTERNET_ALUNOS', 'IN_INTERNET_APRENDIZAGEM',
'IN_INTERNET_COMUNIDADE', 'IN_BANDA_LARGA',
'QT_MAT_BAS_D', 'QT_MAT_BAS_N', 'QT_MAT_BAS_EAD',
'IN_FUND', 'IN_FUND_AI', 'IN_FUND_AF', 'IN_MED',
'QT_MAT_FUND', 'QT_MAT_FUND_AI', 'QT_MAT_FUND_AF',
'QT_MAT_MED')
file.2022 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2022/Dados/microdados_ed_basica_2022.csv'
file.2021 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2021/Dados/microdados_ed_basica_2021.csv'
file.2020 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2020/Dados/microdados_ed_basica_2020.csv'
file.2019 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2019/Dados/microdados_ed_basica_2019.csv'
file.2018 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2018/Dados/microdados_ed_basica_2018.csv'
file.2017 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2017/Dados/microdados_ed_basica_2017.csv'
file.2016 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2016/Dados/microdados_ed_basica_2016.csv'
file.2015 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2015/Dados/microdados_ed_basica_2015.csv'
file.2014 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2014/Dados/microdados_ed_basica_2014.csv'
file.2013 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2013/Dados/microdados_ed_basica_2013.csv'
file.2012 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2012/Dados/microdados_ed_basica_2012.csv'
file.2011 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2011/Dados/microdados_ed_basica_2011.csv'
file.2010 <- '~/Documentos/microdados/censo escolar/microdados_ed_basica_2010/Dados/microdados_ed_basica_2010.csv'
censo.escolar.2022 <- read.data(2022, file.2022, variables)
censo.escolar.2021 <- read.data(2021, file.2021, variables)
censo.escolar.2020 <- read.data(2020, file.2020, variables)
censo.escolar.2019 <- read.data(2019, file.2019, variables)
censo.escolar.2018 <- read.data(2018, file.2018, variables)
censo.escolar.2017 <- read.data(2017, file.2017, variables)
censo.escolar.2016 <- read.data(2016, file.2016, variables)
censo.escolar.2015 <- read.data(2015, file.2015, variables)
censo.escolar.2014 <- read.data(2014, file.2014, variables)
censo.escolar.2013 <- read.data(2013, file.2013, variables)
censo.escolar.2012 <- read.data(2012, file.2012, variables)
censo.escolar.2011 <- read.data(2011, file.2011, variables)
censo.escolar.2010 <- read.data(2010, file.2010, variables)
I’ve saved the data as censo_escolar.Rdata. This file is available on my repo: repo
To read the censo_escolar.Rdata, you can use the following code: > load(“paste_the_file_directory_here”)
Let’s bind all this data.frame in only one data.frame called
censo.escolar.
To make data analysis easier, it is good practice to rename the variables. Let’s do it.
Before analyse the data is interesting to look at the format of all variables.
## Rows: 3,017,633
## Columns: 35
## $ Ano <dbl> 2010, 2010, 2010,…
## $ Nome_região_geográfica <chr> "Norte", "Norte",…
## $ Código_região_geográfica <dbl> 1, 1, 1, 1, 1, 1,…
## $ Código_UF <dbl> 11, 11, 11, 11, 1…
## $ Nome_Município <chr> "Alta Floresta D'…
## $ Código_Escola <dbl> 11022558, 1102427…
## $ Dependência_Administrativa <dbl> 2, 2, 3, 3, 3, 3,…
## $ Localização <dbl> 2, 1, 2, 2, 2, 2,…
## $ Categoria_escola_privada <dbl> 0, 0, 0, 0, 0, 0,…
## $ Situação_funcionamento <dbl> 1, 1, 1, 1, 1, 1,…
## $ Quantidade_computadores_uso_alunos <dbl> 0, 0, 0, 0, 0, 5,…
## $ Computadores_em_uso_pelos_alunos_desktop <dbl> 0, 0, 0, 0, 0, 0,…
## $ Quantidade_computadores_em_uso_pelos_alunos_desktop <dbl> 0, 0, 0, 0, 0, 0,…
## $ Computadores_em_uso_pelos_alunos_portátil <dbl> 0, 0, 0, 0, 0, 0,…
## $ Quantidade_computadores_em_uso_pelos_alunos_portátil <dbl> 0, 0, 0, 0, 0, 0,…
## $ Computadores_em_uso_pelos_alunos_tablet <dbl> 0, 0, 0, 0, 0, 0,…
## $ Quantidade_computadores_escola <dbl> 0, 9, 0, 0, 0, 6,…
## $ Quantidade_computadores_uso_administrativo <dbl> 0, 9, 0, 0, 0, 1,…
## $ Quantidade_computadores_em_uso_pelos_alunos_tablet <dbl> 0, 0, 0, 0, 0, 0,…
## $ Acesso_Internet <dbl> 0, 1, 0, 0, 0, 1,…
## $ Acesso_Internet_alunos <dbl> 0, 0, 0, 0, 0, 0,…
## $ Acesso_Internet_processos_de_ensino_aprendizagem <dbl> 0, 0, 0, 0, 0, 0,…
## $ Acesso_Internet_Para_comunidade <dbl> 0, 0, 0, 0, 0, 0,…
## $ Internet_Banda_Larga <dbl> 0, 1, 0, 0, 0, 0,…
## $ Número_Matrículas_Educação_Básica_Diurno <dbl> 5, 0, 0, 0, 0, 26…
## $ Número_Matrículas_Educação_Básica_Noturno <dbl> 0, 660, 0, 0, 0, …
## $ Número_Matrículas_Educação_Básica_Distância <dbl> 0, 0, 0, 0, 0, 0,…
## $ Ensino_Fundamental_Possui_matrículas <dbl> 1, 0, 1, 1, 1, 1,…
## $ Ensino_Fundamental_Anos_Iniciais_Possui_matrículas <dbl> 1, 0, 1, 1, 1, 1,…
## $ Ensino_Fundamental_Anos_Finais_Possui_matrículas <dbl> 0, 0, 0, 0, 0, 1,…
## $ Ensino_Médio_Possui_matrículas <dbl> 0, 0, 0, 0, 0, 0,…
## $ Número_Matrículas_Ensino_Fundamental <dbl> 5, 0, 19, 11, 11,…
## $ Número_Matrículas_Ensino_Fundamental_Anos_Iniciais <dbl> 5, 0, 19, 11, 11,…
## $ Número_Matrículas_Ensino_Fundamental_Anos_Finais <dbl> 0, 0, 0, 0, 0, 64…
## $ Número_Matrículas_Ensino_Médio <dbl> 0, 0, 0, 0, 0, 0,…
Let’s change the format of variables that should be factors. In R, factors are used to work with categorical variables.
Now, it is possible to see that we have the correct format of categorical variables.
## Rows: 3,017,633
## Columns: 35
## $ Ano <dbl> 2010, 2010, 2010,…
## $ Nome_região_geográfica <fct> Norte, Norte, Nor…
## $ Código_região_geográfica <dbl> 1, 1, 1, 1, 1, 1,…
## $ Código_UF <dbl> 11, 11, 11, 11, 1…
## $ Nome_Município <chr> "Alta Floresta D'…
## $ Código_Escola <dbl> 11022558, 1102427…
## $ Dependência_Administrativa <fct> Estadual, Estadua…
## $ Localização <fct> Rural, Urbana, Ru…
## $ Categoria_escola_privada <fct> NA, NA, NA, NA, N…
## $ Situação_funcionamento <fct> Em_atividade, Em_…
## $ Quantidade_computadores_uso_alunos <dbl> 0, 0, 0, 0, 0, 5,…
## $ Computadores_em_uso_pelos_alunos_desktop <fct> Não, Não, Não, Nã…
## $ Quantidade_computadores_em_uso_pelos_alunos_desktop <dbl> 0, 0, 0, 0, 0, 0,…
## $ Computadores_em_uso_pelos_alunos_portátil <fct> Não, Não, Não, Nã…
## $ Quantidade_computadores_em_uso_pelos_alunos_portátil <dbl> 0, 0, 0, 0, 0, 0,…
## $ Computadores_em_uso_pelos_alunos_tablet <fct> Não, Não, Não, Nã…
## $ Quantidade_computadores_escola <dbl> 0, 9, 0, 0, 0, 6,…
## $ Quantidade_computadores_uso_administrativo <dbl> 0, 9, 0, 0, 0, 1,…
## $ Quantidade_computadores_em_uso_pelos_alunos_tablet <dbl> 0, 0, 0, 0, 0, 0,…
## $ Acesso_Internet <fct> Não, Sim, Não, Nã…
## $ Acesso_Internet_alunos <fct> Não, Não, Não, Nã…
## $ Acesso_Internet_processos_de_ensino_aprendizagem <fct> Não, Não, Não, Nã…
## $ Acesso_Internet_Para_comunidade <fct> Não, Não, Não, Nã…
## $ Internet_Banda_Larga <fct> Não, Sim, Não, Nã…
## $ Número_Matrículas_Educação_Básica_Diurno <dbl> 5, 0, 0, 0, 0, 26…
## $ Número_Matrículas_Educação_Básica_Noturno <dbl> 0, 660, 0, 0, 0, …
## $ Número_Matrículas_Educação_Básica_Distância <dbl> 0, 0, 0, 0, 0, 0,…
## $ Ensino_Fundamental_Possui_matrículas <fct> Sim, Não, Sim, Si…
## $ Ensino_Fundamental_Anos_Iniciais_Possui_matrículas <fct> Sim, Não, Sim, Si…
## $ Ensino_Fundamental_Anos_Finais_Possui_matrículas <fct> Não, Não, Não, Nã…
## $ Ensino_Médio_Possui_matrículas <fct> Não, Não, Não, Nã…
## $ Número_Matrículas_Ensino_Fundamental <dbl> 5, 0, 19, 11, 11,…
## $ Número_Matrículas_Ensino_Fundamental_Anos_Iniciais <dbl> 5, 0, 19, 11, 11,…
## $ Número_Matrículas_Ensino_Fundamental_Anos_Finais <dbl> 0, 0, 0, 0, 0, 64…
## $ Número_Matrículas_Ensino_Médio <dbl> 0, 0, 0, 0, 0, 0,…
After formatting the variables, let’s make some exploratory data analysis. First, let’s take a look at the number of school enrollment at basic education.
Let’s use a graph to better visualize this data.
Now, the enrollment at basic education separated by location of school.
## `summarise()` has grouped output by 'Ano'. You can override using the `.groups`
## argument.
The next table shows the proportion of schools with fast internet connection.
The graph bellow shows the proportion of schools with fast internet connection.
## `summarise()` has grouped output by 'Ano'. You can override using the `.groups`
## argument.
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_text()`).